When parts at a work station are to be handled by a robot, it is necessary to create robot data which include path data indicating what path the robot is to be moved along and up to what point, as well as data specifying the robot motions, and to input these data to the robot controller. The tendency recently is to create and input such robot data by an off-line programming operation without relying upon a teaching operation.
This off-line programming is carried out by defining robot motion in a simple robot language, translating a source program created in the robot language by the translating function of an off-line programming apparatus and adopting the translated program as robot data of predetermined codes executable by the robot controller.
When the robot data are inputted to the robot controller and the controller is started, the desired robot motions are executed.
FIG. 5 is a block diagram of such a robot controller. The robot controller 11 has the constitution of a computer and includes a processor 11a, a control program memory (ROM) 11b, a RAM 11c for storing robot data as well as the results of processing and the like, a control panel 11d, an axis controller 11e constituted by a pulse distributor and servocircuitry, and an input/output port 11f for performing input/output of digital signals with a robot side 12.
The processor 11a executes commands contained in the robot data one at a time. If the data are path data, the processor 11a causes the axis controller 11e to perform path processing to move the robot. If a command is one for output of a digital signal, then the processor outputs the digital signal to the robot side via a predetermined port 11f-i (i =1, 2, . . .) of the input/output port 11f and receives a predetermined digital signal from the robot side via a predetermined input/output port and executes predetermined processing.
The off-line programming apparatus is equipped with a function (referred to as an "interpreter" function) through which the robot data that have been created are executed off-line, namely without the robot being connected. In accordance with the interpreter function, the robot data can be executed one command at a time and, as shown in FIG. 6, a robot path RP, the line number LN of the present block and the end point coordinates PND of the present block are painted on a display screen, thus allowing robot motions to be verified.
In actual control based on robot data, there are cases where a subsequent command can be executed only after a predetermined signal from the robot side has entered the robot controller via the predetermined input/output port. For example, when the robot controller commands the robot side to start a conveyor operation, there are cases where the next command can be executed by the robot controller after it receives a signal from the robot side to the effect that the conveyor has started.
In conventional off-line control, the abovementioned signal cannot be generated. With conventional off-line control, therefore, it is arranged so that the controller may proceed to the next command even without receiving the aforementioned signal. However, though it is possible to verify motion relating to robot movement by looking at the display screen in accordance with the conventional method, a problem is that verification of robot motions based on digital signals exchanged with the robot side cannot be carried out.
Furthermore, it is not possible with the conventional method to verify the output of digital signals to the robot side.